<?php
session_start();
header('Content-Type: text/html; charset=UTF-8');
include_once ('../Libreria/fpdf17/fpdf.php');
include_once ('../controlador_bd/CConexion.php');

// Creación del objeto de la clase heredada

class PDF extends FPDF {
	// Cabecera de página
	function Header() {
		$conec = new CConexion;
		$conec -> conectar();
		$consultaMes = "select 
					distinct month(fechaorden) as mes 
				from 
					ordendeexamen 
				where 
					MONTH(fechaorden)=MONTH(now())";
		$pgConsultaMes = pg_query($consultaMes);
		$mes = pg_fetch_array($pgConsultaMes);
		$consultaAnnio = "select 
				distinct to_char(fechaorden, 'yyyy') as anio 
			from 
				ordendeexamen 
			where 
				MONTH(fechaorden) = MONTH(now());";

		$pgConsultaAnnio = pg_query($consultaAnnio);
		$annio = pg_fetch_array($pgConsultaAnnio);
		//$conec -> desconectar();
		$esmes = "No hay datos para este mes";
		switch ($mes['mes']) {
			case 1 :
				$esmes = "Enero de " . $annio['anio'];
				break;
			case 2 :
				$esmes = "Febrero de " . $annio['anio'];
				break;
			case 3 :
				$esmes = "Marzo de " . $annio['anio'];
				break;
			case 4 :
				$esmes = "Abril de " . $annio['anio'];
				break;
			case 5 :
				$esmes = "Mayo de " . $annio['anio'];
				break;
			case 6 :
				$esmes = "Junio de " . $annio['anio'];
				break;
			case 7 :
				$esmes = "Julio de " . $annio['anio'];
				break;
			case 8 :
				$esmes = "Agosto de " . $annio['anio'];
				break;
			case 9 :
				$esmes = "Septiembre de " . $annio['anio'];
				break;
			case 10 :
				$esmes = "Octubre de " . $annio['anio'];
				break;
			case 11 :
				$esmes = "Noviembre de " . $annio['anio'];
				break;
			case 12 :
				$esmes = "Diciembre de " . $annio['anio'];
				break;
			default :
				break;
		}

		// Logo hizquierdo
		$this -> Image('../Imagen/logo.png', 4, 6, 40);
		// Logo derecho
		// $this -> Image('../Imagen/horario.png', 160, 6, 50);
		// Arial bold 15
		$this -> SetFont('Times', 'BI', 15);
		// Movernos a la derecha
		//$this->Cell(80);
		// Título
		$this -> Cell(null, null, utf8_decode('Laboratorio Clinico de Diagnóstico'), 10, 5, 'C');
		// Salto de línea
		$this -> Ln(5);
		//$this->Cell(80);
		$this -> SetFont('Arial', '', 10);
		$this -> Cell(null, null, 'Calidad y Responsabilidad nos distinguen', 10, 5, 'C');
		$this -> Ln(5);
		$this -> SetFont('Arial', 'BI', 15);
		$this -> Cell(null, null, '"JERACHRIS"', 10, 5, 'C');
		$this -> Ln(5);
		$this -> SetFont('Arial', '', 10);
		$this -> Cell(null, null, utf8_decode('Lic. Marina Graciela Márquez de Gómez'), 10, 5, 'C');
		$this -> Ln(5);
		$this -> Cell(null, null, 'J.V.P.L No. 1199', 10, 5, 'C');
		$this -> Ln(5);
		$this -> Cell(null, null, 'Laboratorio: Urb. El Matazano No. 3, Calle Principal Casa #88 ', 10, 5, 'C');
		$this -> Ln(5);
		$this -> Cell(null, null, '(Valle Nuevo) Soyapango, una cuadra antes de la Unidad de Salud de Santa Lucia', 10, 5, 'C');
		$this -> Ln(5);
		$this -> Cell(null, null, 'Ruta de Buses 29-A', 10, 5, 'C');
		$this -> Ln(5);
		$this -> Cell(null, null, '', 1, 5);
		$this -> SetFont('Times', 'B', 13);
		$this -> Ln(10);
		$this -> Cell(0, 0, utf8_decode(strtoupper("REPORTE DE EXAMENES REALIZADOS EN EL MES DE " . $esmes)), 0, 1, 'C');
		$this -> Ln(10);
		$this -> Cell(null, null, '', 1, 5);
		$this -> SetRightMargin(25);
		$this -> SetLeftMargin(25);
		$this -> Ln(5);
		$this -> SetFont('Times', 'B', 12);
		$this -> Cell(40, 0, utf8_decode('Fecha de solicitud'), 40, 5, 'C');
		$this -> Cell(180, 0, utf8_decode('Examen Realizado'), 40, 5, 'C');
		//$this -> Cell(200, 0, utf8_decode('No. de Orden'), 40, 10, 'C');
		$this -> Cell(300, 0, utf8_decode('Monto'), 40, 5, 'C');
		//Imprimiendo Linea
		$this -> Ln(5);
		$this -> Cell(null, null, '', 1, 5);
		$this -> SetRightMargin(25);
		$this -> SetLeftMargin(25);
		$this -> Ln(5);
		

	}

	// Pie de página
	function Footer() {
		// Posición: a 1,5 cm del final
		$this -> SetY(-15);
		// Arial italic 8
		$this -> SetFont('Arial', 'I', 10);
		
		// Número de página
		$this -> SetFont('Arial', 'I', 10);
		$this -> Cell(0, 10, utf8_decode('Página ' . $this -> PageNo() . '/{nb}'), 0, 0, 'R');
	}

}

$objconec = new CConexion();
$objconec -> conectar();

$consulta = "select 
				t1.codigoorden, 
				t2.nombreexa, 
				to_char(t1.fechaorden, 'DD/MM/YYYY') as fecha, 
				t1.totalapagar 
			from 
				ordendeexamen as t1 
				inner join 
				examen as t2 
				on t1.codigoexa = t2.codigoexa 
			where 
				MONTH(fechaorden) = MONTH(now()) 
			order by  
				t1.fechaorden asc ";

$pgConsulta = pg_query($consulta);
$fila = pg_fetch_array($pgConsulta);
$cuentamifila = pg_num_rows($pgConsulta);

$consultaTotal = "select 
					sum(totalapagar) as total 
				  from 
				  	ordendeexamen 
				  where 
				  	MONTH(fechaorden)=MONTH(now());";
$pgConsultaTotal = pg_query($consultaTotal);
$total = pg_fetch_array($pgConsultaTotal);

$consultaMes = "select 
					distinct month(fechaorden) as mes 
				from 
					ordendeexamen 
				where 
					MONTH(fechaorden)=MONTH(now())";

$pgConsultaMes = pg_query($consultaMes);
$mes = pg_fetch_array($pgConsultaMes);

$consultaAnnio = "select 
				distinct to_char(fechaorden, 'yyyy') as anio 
			from 
				ordendeexamen 
			where 
				MONTH(fechaorden) = MONTH(now());";

$pgConsultaAnnio = pg_query($consultaAnnio);
$annio = pg_fetch_array($pgConsultaAnnio);
$esmes = "No hay datospara este mes";
switch ($mes['mes']) {
	case 1 :
		$esmes = "Enero de " . $annio['anio'];
		break;
	case 2 :
		$esmes = "Febrero de " . $annio['anio'];
		break;
	case 3 :
		$esmes = "Marzo de " . $annio['anio'];
		break;
	case 4 :
		$esmes = "Abril de " . $annio['anio'];
		break;
	case 5 :
		$esmes = "Mayo de " . $annio['anio'];
		break;
	case 6 :
		$esmes = "Junio de " . $annio['anio'];
		break;
	case 7 :
		$esmes = "Julio de " . $annio['anio'];
		break;
	case 8 :
		$esmes = "Agosto de " . $annio['anio'];
		break;
	case 9 :
		$esmes = "Septiembre de " . $annio['anio'];
		break;
	case 10 :
		$esmes = "Octubre de " . $annio['anio'];
		break;
	case 11 :
		$esmes = "Noviembre de " . $annio['anio'];
		break;
	case 12 :
		$esmes = "Diciembre de " . $annio['anio'];
		break;
	default :
		break;
}
$conTotalExam = "select 
					count(ordendeexamen) as total 
				  from 
				  	ordendeexamen 
				  where 
				  	MONTH(fechaorden) = MONTH(now())";
$pgConTotalExam = pg_query($conTotalExam);
$resutl = pg_fetch_array($pgConTotalExam);

$pdf = new PDF('P', 'mm', 'Letter');
$pdf -> AliasNbPages();
//$pdf -> SetRightMargin(30);
//$pdf -> SetTopMargin(5);
$pdf -> AddPage();
$pdf -> SetFont('Arial', 'B', 10);

$pdf -> SetFont('Arial', '', 10);
if ($cuentamifila == 0) {
	$pdf -> Cell(0, 0, 'No hay datos', 0, 1);
	$pdf -> Output();
	echo "Error no hay datos \n Filas: " . $cuentamifila;
} else {

	$i = 0;
	while ($i < $cuentamifila) {
		$row = pg_fetch_row($pgConsulta, $i);
		$pdf -> Cell(40, 0, utf8_decode($row[2]), 40, 5, 'C');
		$pdf -> Cell(180, 0, utf8_decode($row[1]), 40, 5, 'C');
		//$pdf -> Cell(200, 0, utf8_decode($row[0]), 40, 5, 'C');
		$pdf -> Cell(300, 0, utf8_decode('$ ' . $row[3]), 40, 5, 'C');
		$pdf -> Ln(5);
		$i++;
	}

	$pdf -> Ln(5);
	$pdf -> SetFont('Times', 'B', 12);
	$pdf -> Cell(40, 0, 'TOTAL', 40, 5, 'C');
	$pdf -> Cell(180, 0, $resutl['total'].' Examenes', 40, 5, 'C');
	$pdf -> Cell(300, 0, '$ ' . $total['total'], 40, 5, 'C');
	$pdf -> Ln(8);

	$objconec -> desconectar();
	$pdf -> Output('Resultados de ' . $esmes . '.pdf', 'D');
	//$pdf -> Output();
}
?>